﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Shared.Http.APIResult
{
    /// <summary>
    /// API 业务响应状态码
    /// </summary>
    public enum ApiStatusCode
    {
        /// <summary>
        /// 成功
        /// </summary>
        Success = 0,

        /// <summary>
        /// 请求参数错误
        /// </summary>
        InvalidParameter = 1001,

        /// <summary>
        /// 用户未登录（未认证）
        /// </summary>
        Unauthorized = 1002,

        /// <summary>
        /// 权限不足（已认证但无权限）
        /// </summary>
        Forbidden = 1003,

        /// <summary>
        /// 资源不存在
        /// </summary>
        ResourceNotFound = 1004,

        /// <summary>
        /// 业务逻辑失败（通用失败）
        /// </summary>
        BusinessError = 1005,

        /// <summary>
        /// 部分操作失败（例如批量操作中部分成功）
        /// </summary>
        PartialFailure = 1006,

        /// <summary>
        /// 服务器内部错误（未预期的异常）
        /// </summary>
        InternalServerError = 5000,

        /// <summary>
        /// 服务暂时不可用，建议稍后重试
        /// </summary>
        ServiceUnavailable = 5001,
    }
}
